package com.ophiux.system.model.entity;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

/**
 * @desc:日志表
 * @autor: hhl 
 * @date: 2022-07-19 09:58:18<br>
 */
@Data
@Accessors(chain = true)
@TableName("sys_log")
public class SysLog {

	@TableId(value = "id", type = IdType.AUTO)
	private Integer id;

	/**
	 * 模块标题
	 */
	private String title;

	/**
	 * 日志类型：0-正常日志；1-异常日志；
	 */
	private String logType;

	/**
	 * 模块id
	 */
	private String serviceId;

	/**
	 * 用户代理
	 */
	private String userAgent;

	/**
	 * 请求URI
	 */
	private String requestUri;

	/**
	 * 请求方式
	 */
	private String requestMethod;

	/**
	 * 请求ID地址
	 */
	private String requestIp;

	/**
	 * 方法名称
	 */
	private String method;

	/**
	 * 请求参数
	 */
	private String params;

	/**
	 * 返回参数
	 */
	private String jsonResult;

	/**
	 * 执行时间（毫秒）
	 */
	private Long executeTime;

	/**
	 * 异常信息
	 */
	private String exception;

	/**
	 * 错误消息
	 */
	private String errorMsg;

	/**
	 * 所属租户
	 */
	private Long tenantId;


	@ApiModelProperty(value="创建人")
	@TableField(value = "create_by",fill = FieldFill.INSERT)
	private String createBy;

	/**
	 * 创建时间
	 */
	@ApiModelProperty(value="创建时间")
	@TableField(value = "create_time",fill = FieldFill.INSERT)
	private LocalDateTime createTime;

	/**
	 * 更新人
	 */
	@ApiModelProperty(value="更新人")
	@TableField(value = "update_by",fill = FieldFill.UPDATE)
	private String updateBy;

	/**
	 * 更新时间
	 */
	@ApiModelProperty(value="更新时间")
	@TableField(value = "update_time",fill = FieldFill.UPDATE)
	private LocalDateTime updateTime;

	/**
	 * 删除标记
	 */
	@TableLogic
	@TableField(fill = FieldFill.INSERT)
	private String delFlag;

}
